double t = ac.dot(ab);
if (t <= 0) {
t = 0;
return S.getOrigin().get();
} else {
final double denom = S.getLength() * S.getLength();
if (t >= denom) {
double t = ac.dot(ab);
if (t <= 0) {
t = 0;
return S.getOrigin();
} else {
final double denom = S.getLength() * S.getLength();
if (t >= denom) {